package com.kamistoat.meimeistore.search.service;

import com.kamistoat.common.To.EsTo.RegisterUpTo;
import com.kamistoat.common.To.EsTo.SpuUpTo;
import org.springframework.stereotype.Service;

import java.io.IOException;
import java.util.List;


public interface ElasticSaveService {
    /**
     * 在spu上架时，将spu下的一系列sku信息保存到ES中
     *
     * @param spuUpToList spuUpTo列表
     */
    Boolean spuUpToES(List<SpuUpTo> spuUpToList) throws IOException;

    /**
     * 在spu下架时，将spu下的一系列sku信息从ES中删除
     *
     * @param skuIdList skuId列表
     */
    Boolean spuDownToES(List<Long> skuIdList) throws IOException;

    /**
     * 注册时将用户名和手机号保存到ES
     *
     * @param registerUpTo To
     */
    void registerUpToEs(RegisterUpTo registerUpTo) throws IOException;

    /**
     * 前端直接访问，查看注册时是否重名
     * @param username username
     * @return 是否重名
     */
    Integer usernameUniqueES(String username) throws IOException;
}
